Adaptive state space signal separation, discrimination and recovery

ABSTRACT

This invention unifies a set of statistical signal processing, neuromorphic systems, and microelectronic implementation techniques for blind separation and recovery of mixed signals. A set of architectures, frameworks, algorithms, and devices for separating, discriminating, and recovering original signal sources by processing a set of received mixtures and functions of said signals are described. The adaptation inherent in the referenced architectures, frameworks, algorithms, and devices is based on processing of the received, measured, recorded or otherwise stored signals or functions thereof. There are multiple criteria that can be used alone or in conjunction with other criteria for achieving the separation and recovery of the original signal content from the signal mixtures. The composition adopts both discrete-time and continuous-time formulations with a view towards implementations in the digital as well as the analog domains of microelectronic circuits. This invention focuses on the development and formulation of dynamic architectures with adaptive update laws for multi-source blind signal separation/recovery. The system of the invention seeks to permit the adaptive blind separation and recovery of several unknown signals mixed together in changing interference environments with very minimal assumption on the original signals. The system of this invention has practical applications to non-multiplexed media sharing, adaptive interferer rejection, acoustic sensors, acoustic diagnostics, medical diagnostics and instrumentation, speech, voice, language recognition and processing, wired and wireless modulated communication signal receivers, and cellular communications. 
     This invention also introduces a set of update laws and links minimization of mutual information and the information maximization of the output entropy function of a nonlinear neural network, specifically in relation to techniques for blind separation, discrimination and recovery of mixed signals. The system of the invention seeks to permit the adaptive blind separation and recovery of several unknown signals mixed together in changing interference environments with very minimal assumption on the original signals.

RELATIONSHIP TO APPLICATIONS

This application is a U.S. National Stage filing of International Application No. PCT/US99/13550, filed Jun. 16, 1999, which claims priority to U.S. Provisional Application No. 60/089,750, filed June 18, 1998.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention pertains to systems for recovering original signal information or content by processing multiple measurements of a set of mixed signals. More specifically the invention pertains to adaptive systems for recovering several original signals from received measurements of their mixtures. In order to understand the problem solved by the invention, and the approach of the prior art to solve this problem, the following problem statement is helpful: With reference to FIG. 1 of the attached drawings, consider N independent signals s₁(t), . . . , and S_(N)(t). These signals may represent any of, or a combination of, independent speakers or speeches, sounds, music, radio-based or light based wireless transmissions, electronic or optic communication signals, still images, videos, etc. These signals may be delayed and superimposed with one another by means of natural or synthetic mixing in the medium or environment through which they propagate. One consequently desires an architecture, framework, or device 20 that, upon receiving the delayed and superimposed signals, works to successfully separate the independent signal sources using a set of appropriate algorithms and procedures for their applications.

2. Discussion of Related Art

The recovery and separation of independent sources is a classic but difficult signal processing problem. The problem is complicated by the fact that in many practical situations, many relevant characteristics of both the signal sources and the mixing media are unknown.

Two main categories of methods are used:

1. Neurally inspired adaptive algorithms (e.g., U.S. Pat. Nos. 5,383,164 and 5.315,532), and

2. Conventional discrete signal processing (e.g., U.S. Pat. Nos. 5,208,786 and 5.539,832).

Neurally inspired adaptive arhitectures and algorithms follow a method originally proposed by J. Herault and C. Jutten, now called the Herault-Jutten (or HJ) algorithm. The suitability of this set of methods for CMOS integration have been recognized. However, the standard HJ algorithm is at best heuristic with suggested adaptation laws that have been shown to work mainly in special circumstances. The theory and analysis of prior work pertaining to the HJ algorithm are still not sufficient to support or guarantee the success encountered in experimental simulations. Herault and Jutten recognize these analytical deficiencies and they describe additional problems to be solved. Their proposed algorithm assumes a linear medium and filtering or no delays. Specifically, the original signals are assumed to be transferred by the medium via a matrix of unknown but constant coefficients. To summarize, the Herault-Jutten method (i) is restricted to the full rank and linear static mixing environments, (ii) requires matrix inversion operations, and (iii) does not take into account the presence of signal delays. In many practical applications, however, filtering and relative delays do occur. Accordingly, previous work fails to successfully separate signals in many practical situations and real world applications.

Conventional signal processing approaches to signal separation originate mostly in the discrete domain in the spirit of traditional digital signal processing methods and use the statistical properties of signals. Such signal separation methods employ computations that involve mostly discrete signal transforms and filter/transform function inversion. Statistical properties of the signals in the form of a set of cumulants are used to achieve separation of mixed signals where these cumulants are mathematically forced to approach zero. This constitutes the crux of the family of algorithms that search for the parameters of transfer functions that recover and separate the signals from one another. Calculating all possible cumulants, on the other hand, would be impractical and too time consuming for real time implementation.

The specifics of these methods are elaborated in these categories below.

1. Neurally Inspired Architectures and Algorithms for Signal Separation

These set of neurally inspired adaptive approaches to signal separation assume that the “statistically independent” signal vector S(t)=[s₁(t), . . . , and s_(N)(t)]^(T) is mixed to produce the signal vector M(t). The vector M(t) is received by the sensors (e.g, microphones, antenna, etc.).

Let the mixing environment be represented by the general (static or dynamic) operator ℑ. Then,

M(t)=ℑ(S(t))  Equation (1)

There are several formulations that can be used to invert the mixing process, i.e., operator ℑ in a “blind” fashion where no apriori knowledge exists as to the nature or content of the mixing operator ℑ or the original sources S(t). We group these into two categories, static and dynamic. Additional distinctions can be made as to the nature of the employed adaptation criteria, e.g., information maximization, minimization of high order cumulants, etc.

1.1. The Static Case

The static case is limited to mixing by a constant nonsingular matrix. Let us assume that the “statistically independent” signal vector S(t)=[s₁(t), . . . , and s_(N)(t)]^(T) is mixed to produce the signal vector M(t). Specifically, let the mixing operator ℑ be represented by a constant matrix A, namely

M(t)=AS(t)  Equation (2)

In FIG. 2, two architectures that outline the modeling of the mixing and the separation environments and processes are shown. The architecture in FIG. 2(a) necessarily computes the inverse of the constant mixing matrix A, which requires that A is invertible, i.e., A⁻¹ exists.

The alternate architecture in FIG. 2(b) does not impose this restriction in that upon convergence the off diagonal elements of the matrix D are exactly those of the off diagonal elements of the matrix A. In this case, however, diagonal elements of the matrix A are restricted to equal “1.0.” By setting the diagonal elements of D to zero, one essentially concludes that the mixing process is invertible even if the mixing matrix is not.

In both cases, S(t) is the set of unknown sources, M(t) is the set of mixtures, U(t) is the set of separated signals that estimate S(t), and Y(t) is the set of control signals used to update the parameters of the unmixing process. As shown in FIG. 2, the weight update utilizes a function of the output U(t).

In the first case, we labeled the unmixing matrix W, and in the second case we labeled it D. Note that D has zero diagonal entries. The update of the entries of these two matrices is defined by the criteria used for signal separation, discrimination or recovery, e.g., information maximization, minimization of higher order cumulants, etc.

As an example, one possible weight update rule for the case where

U(t)=WM(t)  Equation (3)

could be

{dot over (w)} _(ij) =η[W ^(−T) +g″(u)/g′(u)M ^(T)]_(ij)  Equation (4)

where η is sufficiently small, g is an odd function, and M is the set of mixtures, U is the set of outputs which estimate the source signals, subscript T denotes transpose, and −T denotes inverse of transpose. Note that the function g( ) plays an additional role in the update which can be related to the above diagram as

Y(t)=g(U(t))  Equation (5)

One uses Equation (4) to update the entries of W in Equation (3). Through this is an iterative update procedure, the entries of W converge so that the product WA is nearly equal to the identity matrix or a permutation of the identity matrix.

On the other hand, in the second case, one potentially useful rule for the update of the D matrix entries d_(ij) is generically described as

{dot over (d)} _(ij) =ηf(u _(i)(t))g(u _(j)(t))  Equation (6)

where η is sufficiently small. In practice some useful functions for f(·) include a cubic function, and for g(·) include a hyperbolic tangent function. When using this procedure, one computationally solves for U(t) from Equation (7) below

U(t)=[I+D] ⁻¹ M(t)  Equation (7)

at each successive step and sample point. This computation is a potentially heavy burden, especially for high dimensional D.

1.2. The Dynamic Case

The dynamic mixing model accounts for more realistic mixing environments, defines such environment models and develops an update law to recover the original signals within this framework.

In the dynamic case, the matrix A is no longer a constant matrix. In reference to the feedback structure of the static example, it is simpler to view Equation (7) where U(t)=[I+D]⁻¹M(t) as an equation of the fast dynamic equation

τ{dot over (U)}(t)=−U(t)−DU(t)+M(t)  Equation (8)

This facilitates the computation by initializing the differential equation in Equation (8) from an arbitrary guess. It is important however to ensure the separation of time scales between Equations (8) and the update procedure like the one defined by Equation (6). This may be ensured by making η in Equation (6) and τ in Equation (8) sufficiently small.

If we assume the dimensionality of M(t) is N, a set of differential equations that define the dynamic signal separation algorithm can be written as $\begin{matrix} {{{\tau_{i}u_{i}} = {{- u_{i}} - {\sum\limits_{j \neq i}\quad {D_{ij}u_{i}}} + m_{i}}}{{{{for}\quad i} = 1},\cdots,N}} & {{Equation}\quad (9)} \end{matrix}$

This enumerates N differential equations. In addition, the adaptation process for the entries of the matrix D can be defined by multiple criteria, e.g., the evaluation of functions f( ) and g( ) in Equation (6). FIG. 3 is a pictorial illustration of the dynamic model in feedback configuration.

Current methods outline little in the way of procedures for the application of adaptation criteria within the architectures defined thus far. Two implied procedures have been noted:

First is the application of the signal separation functions, adaptation procedures and criteria to arbitrary points of data—regardless of whether each of these points is practically and physically accessible or not. Thus, the adaptive separation procedure applies the adaptation functions and criteria to each element of the measured mixed signals individually and instantaneously, after which appropriate parameter updates are made.

The second type of procedure has been described in FIG. 2(a) that uses Equation (3). In this case, the criteria is applied to the entire data set, or selected data points from the entire data set. Thus, the related adaptation process does not progress per sample, but utilizes the whole data set over which a constant, static mixing matrix is assumed to apply. Although this method is somewhat more robust than the first, it is essentially an off-line method not suitable for real time signal separation. Furthermore, when the assumption of a static constant matrix is incorrect, the accuracy of the unmixing process suffers.

1.3. Feedforward State Space

The architecture is shown in FIG. 7. Let the n-dimensional source signal vector be s, and the m-dimensional measurement vector be M. The mixing environment may be described by the Linear Time-Invariant (LTI) state space:

{dot over ({overscore (X)})}={overscore (A)}{overscore (X)}+{overscore (B)}sM={overscore (C)}{overscore (X)}+{overscore (D)}s  Equation (10)

The parameter matrices {overscore (A)}, {overscore (B)}, {overscore (C)} and {overscore (D)} are of compatible dimensions. This formulation encompasses both continuous-time and discrete-time dynamics The dot on the state {overscore (X)} means derivative for continuous-time dynamics, it however means “advance” for discrete-time dynamics. The mixing environment is assumed to be (asymptotically) stable, i.e., the matrix {overscore (A)} has its eigenvalues in the left half complex plane. The (adaptive) network is proposed to be of the form

{dot over (X)}=AX+BMy=CX+DM,  Equation (11)

where y is the n-dimensional output, X is the internal state, and the parameter matrices are of compatible dimensions. For simplicity, assume that X has the same dimensions as {overscore (X)}. FIG.(7) depicts the feedforward form of this framework.

The first question is the following: Does there exist parameter matrices A, B, C, and D which would recover the original signals? The answer now follows.

Existence of Solutions to the Recovery Problem

We state that the (adaptive) dynamic network would be able to counter act the mixing environment, if the network parameters are set at (or attain via an adaptive scheme) the following values:

A=A*=T({overscore (A)}−{overscore (B)}[D]{overscore (C)})T ⁻¹  Equation (12)

B=B*=T{overscore (B)}[D]  Equation (13)

C=C*=−[D]{overscore (C)}T ⁻¹  Equation (14)

D=D*=[D]  Equation (15)

where [D] equals

D⁻¹: the inverse of D, if m=n,

({overscore (D)}^(T){overscore (D)})⁻¹D^(−T); a pseudo-inverse, if m>n, and

D^(−T)({overscore (DD)}^(T))⁻¹: a pseudo-inverse if m<n.

The matrices A*, B*, and C* can take on a family of values due to the nonsingular state-equivalent transformation T. We shall use T to render the network architecture “canonical” or simple from a realization view point. This formulation in effect generalizes the formulations in the literature, which are limited to FIR filters, predominantly for 2-dimensional sources and two measurements, into general n-dimensional sources, and m-dimensional measurements. Note that, this modeling includes the FIR filtering models, and extends to IIR filtering if A is nonzero.

While this feedforward form for the adaptive network is viable, we note a limitation for its applicability, namely, that the parameters of the mixing environment have to be such that the matrix A* is (asymptotically) stable. That is, for a stable mixing environment, the composite matrix of the adaptive network

A*={overscore (A)}−{overscore (B)}[D]{overscore (C)}  Equation (16)

must be (asymptotically) stable, i.e., has its eigenvalues in the left half complex plane. It is apparent that this requirement places a limiting condition on the allowable mixing environments which may exclude certain class of applications!

2. The Transfer Function Based Approach to Signal Separation

The representation of signal mixing and separation by transfer functions makes this approach a dynamic environment model and method.

Current methods thus define a structure for separating two signals by processing two mixture measurements, which was illustrated in FIG. 4.

Other architectures for the separation functions in the transfer function domain results in three serious shortfalls which are all impediments to the design and implementation of a practical method and apparatus. First, this formulation, as expressed, precludes the generalization of the separation procedure to higher dimensions, where the dimensionality of the problem exceeds two. In other words, a practical formalization of the separation method does not exist when there are more than two mixtures and two sources. One can illustrate this by direct reference to other approaches, where matrix multiplication terms are written out, so that each scalar equation defines one of the entries of the resulting product matrix desired to be equal to zero. Since permutations of a diagonal matrix are also allowed, multiple sets of equations are created. For a two mixture problem, this results in two pairs (four total) of equations, each with two product terms. Beyond that the number of equations increases. To be precise the number of equations needed to describe the number of equations for a specific permutation of the N dimensional case is equal to (N²−N). For the two dimensional problem this value is 2.

Second, the inversion procedure for the transfer function is ad hoc and no recipe or teaching exists. The impact of dimensionality plays a crucial role in this. It is apparent from the method that the resulting architecture gives rise to networks requiring transfer components whose order is dependent on products of the transfer components of the mixing environment. Thus, one can not design a network architecture with a fixed order.

Third, the initial conditions can not be defined since the formulation is not in the time domain and can not be initialized with arbitrary initial conditions. Hence, the method is not suitable for real time or on line signal separation.

SUMMARY OF THE INVENTION

The present invention describes a signal processing system for separating a plurality of input signals into a plurality of output signals, the input signals being composed of a function of a plurality of source signals being associated with a plurality of sources, the output signals estimating the source signals or functions of source signals. The system comprises a plurality of sensors for detecting the input signals, an architecture processor for defining and computing a signal separation method, the signal separation method delimiting a signal separation architecture for computing the output signals, and an output processor for computing the output signals based on the signal separation method or architecture.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1. Signal separation, discrimination and recovery problem statement.

FIG. 2. Architecture of the signal separation and recovery network in case of static mixing by matrix A. U(t) is the output which approximates the original source signals s(t). Y(t) contain the values that are used in updating the parameters of the unmixing processes, i.e., W in (a) and D in (b).

FIG. 2(a). A static neural network structure for signal separation. U(t) approximates S(t). Y(t) is used for weight update of the network.

FIG. 2(b) An alternate static neural network structure for signal separation. U(t) approximates S(t). Y(t) is used for weight update of the feedback network.

FIG. 3. Architecture of the signal separation and recovery network in case of feedback dynamic mixing and separation models. U(t) approximates S(t). The function g defines the criteria used for weight update of the feedback network.

FIG. 4. (a) Conventional transfer function representation for signal mixing and separation for a two signal system. The two signals U₁ and U₂ approximate S1 and S2. G inverts the mixing process modeled as H. (b) The method is described only in two dimensions. The computation procedure and is neither practical nor extendible in the case of higher dimensional signals. Furthermore, the extension of the mixing environment to transfer function domain has also eliminated the time domain nature of the signals. This also causes the exclusion of the initial conditions from the set of equations.

FIG. 5. Two mixing models for the state space time domain architecture. (a) General framework. (b) Special case where {overscore (A)} and {overscore (B)} are fixed, and its relation to conventional signal processing. Both models apply to multiple types of separation architectures.

FIG. 6. Signal separation model for the state space time domain architecture. (a) General model and architecture. (b) Special case, only the model is shown without the arrows in (a) which depict parameter update procedures.

FIG. 7. Feedforward state space architecture.

FIG. 8. Feedback state space architecture.

FIGS. 9. (a) Flowchart of the method of the present invention. (b) DSP implementation architecture. AID stands for analog to digital conversion, and D/A for digital to analog conversion. The internals of the DSP may include a variety of functional units as shown below. Different configurations are possible depending on the nature of the application, number of mixtures, desired accuracy, etc.

FIG. 10. Audio application based on the signal separation and recovery procedures of this invention. Audio signals are converted electrical signals by the elements of the microphone array. Each element of the microphone array receives a different version (or mixture) of the sounds in the environment. Different arrangements of microphone elements can be designed depending on the nature of the application, number of mixtures, desired accuracy, and other relevant criteria. Following some signal conditioning and filtering, these mixture signals are converted from analog format to digital format, so that they can be stored and processed. The digital signal processor of the system is programmed in accordance with the procedures for signal separation and recovery procedures of this invention. The internals of the DSP may include a variety of functional units for various arithmetic and logic operations, and digital representation, data storage and retrieval means to achieve optimum performance. Circuits and structures shown in figure may undergo further integration towards realization of the whole system on a single to chip.

DETAILED DESCRIPTION OF THE INVENTION

The present invention seeks to recover and separate mixed signals transmitted through various media wherein the separation of signals is of such high quality as to substantially increase (i) the signal carrying capacity of the medium or channel, (ii) the quality of the received signal, or (iii) both. The media or channels may include a combination of wires, cables, fiber optics, wireless radio or light based frequencies or bands, as well as a combination of solid, liquid, gas particles, or vacuum.

The present invention also seeks to separate mixed signals through media or channel wherein a high quality of signal separation is achieved by hardware currently available or produceable by state of the art techniques.

The system of this invention introduces a set of generalized frameworks superior to the described preexisting approaches for coping with a range of circumstances unaddressed to date. Specifically, the feedback state space architecture shown in FIG. 8 and its continuous and discrete renditions are described. Moreover, the architecture is mapped onto a set of adaptive filters in both FIR and IIR form, commonly used by those skilled in the art of digital signal processing. In addition, many functions and procedures for the adaptive computation of parameters pertinent to the architectures of this invention are outlined. Both the architectures and the procedures for adaptive computation of parameters are designed for achieving on-line real time signal separation, discrimination and recovery. The most practically pertinent shortfalls of many other techniques, namely the failure to account for multiple or unknown number of signals in the mixing, noise generation, changing mixing conditions, varying signal strength and quality, and some nonlinear phenomena are addressed by the formulations of this invention. The invented method overcomes the deficiencies of other methods by extending the formulation of the problem to include two new sets of architectures and frameworks, as well as a variety of parameter adaptation criteria and procedures designed for separating and recovering signals from mixtures.

Introduction

This invention presents a framework that addresses the blind signal separation and recovery (or de-convolution) in dynamic environments. The original work was motivated by the work of Herault and Jutten and Comon. Most of the recent results have focused primary on establishing analytical foundation of the results reported by Herault, Jutten and Kullback. Several researchers have used a host of analytical tools that include applied mathematics, statistical signal processing, system theory, dynamical systems and neural networks. The challenge still exists in generalizing the environment to more general dynamic systems.

Several theoretical results and formulations address the blind separation and recovery of signals in dynamic environments. We consider state space dynamic models to represent the mixing environment and consequently the adaptive network used to perform the signal separation and recovery. We employ dynamic models which are easily, and directly, adapted to discrete as well as continuous time channels. The presented environment model and the adaptive network allow for the case when the mixing environment includes (state) feedback and memory. The feedback of the state/output corresponds to Infinite Impulse Response (IIR) filtering in the discrete-time case, where as the feedforward corresponds to the FIR formulation.

The emphasis of our method is in developing the network architecture, and the improved convergent algorithms, with a view towards efficient implementations. An improved approximation of the (nonlinear) mutual information/entropy function is used in order to ensure whitening and also to eliminate the assumption of output unit covariance. The improved expansion produces an odd polynomial in the network outputs which includes a linear term, as well as higher order terms—all absent from the expansion in other methods. It should be noted however, that some work has addressed only the static case where the mixing environment is represented by a constant matrix. Specifically, a formulation for an FIR filter was also converted into a static matrix mixing problem.

Method Summary

FIG. 9(a) shows a process flow diagram of a method of the present invention. This includes (1) obtaining samples, (2) pre-processing of the samples. (3) computing outputs using the present value of the states or adaptive parameters, (4) computing adaptive parameters, (5) computing internal states, and storing and/or presenting of outputs.

Obtaining samples includes obtaining the multi channel data recorded through multiple sensors, e.g., microphones. Such data could also come from previously recorded outputs of said multiple sensors or mixtures thereof, e.g., mixed tracks of sounds. Data can be sampled on line for a real time or near real time process, or be recalled from a storage or recording media, e.g., tape, hard disk drive, etc.

Preprocessing of the samples include various processing techniques for manipulation of the obtained samples, including but not limited to up or down sampling to vary the effective sampling rate of data, application of various frequency filters, e.g., low, high, or band pass filters, or notch filters, linear or nonlinear operations between sensor outputs of the present or previous samples, e.g., weighted sum of two or more sensors, buffering, random, pseudorandom or deterministic selection and buffering, windowing of sampled data or functions of sampled data, and various linear and nonlinear transforms of the sampled data.

Computing outputs uses the states and parameters computed earlier. It is also possible delay this step until after the computation of adaptive parameters or after the computation of the internal states, or both. Moreover, alternately, outputs could be computed twice per sample set.

Computing of adaptive parameters may involve a method or multiple methods which use the derivatives of a function to compute the value of the function, the function defining the constraints imposed on the adaptive parameters. One or more such constraints can be used. A variety of methods and criteria specifically for computation of adaptive parameters are outlined in the present invention.

Computing of internal states involves invoking the structure of the architecture, along with the current or available values of adaptive parameters. The internal states may be in the form of a vector of states, scalar states, their samples in time, or their derivatives. The particular architecture defines the number of states.

Dynamic Architectures

Dynamic models encompass and describe more realistic environments. Both feedforward and feedback architectures of the state space approach can be implemented. Feedforward linear state space architecture was listed above. Throughout this description, we shall refer to the mathematical model for signal mixing as the mixing environment, while we refer to the mathematical model for the signal recovery as the (adaptive) network.

The method of this invention extends the environment to include more realistic models beyond a constant matrix, and develops successful update laws. A crucial first step is to include dynamic linear systems of the state space which are more general than FIR filters and transfer functions due to the inclusion of feedback and variations in initial conditions. Moreover, these models lend themselves to direct extension to nonlinear models. Another motivation of this work is to enable eventual implementation in analog or mixed mode micro-electronics.

The formulation addresses the feedback dynamic structures, where the environment is represented by a suitable realization of a dynamic linear system.

The Feedforward Linear Structure

The feedforward state space architecture was described in the introduction section and illustrated in FIG. 7.

The Feedback Linear Structures

A more effective architecture than its feedforward precursor is the so-called (output) feedback network architecture, see FIG. 8. This architecture leads to less restrictive conditions on the network parameters. Also, because of feedback, it inherits several known attractive properties of feedback systems including, robustness to errors and disturbances, stability, and increased bandwidth. These gains will become apparent from the following equations

Existence of Solutions to the Recovery Problem

If y is to converge to a solution proportional (via a permutation matrix P) to s, namely, y=Ps, then, the following parameter matrices of the (adaptive) network will constitute a solution that recovers the original signals:

A=A*=T{overscore (A)}T ⁻¹

B=B*=T{overscore (B)}P ⁻¹

C=C*={overscore (C)}T ⁻¹

D=D*={overscore (D)}P ⁻¹ −H

In addition to the expected desired properties of having feedback in the architecture of the network, we also achieve simplicity of solutions to the separation/recovery of signals. In this case, the architecture is not introducing additional constraints on the network. Note that H in the forward path of the network may in general represent a matrix in the simplest case, or a transfer function of a dynamic model. Furthermore, in the event that m=n, H may be chosen to be the identity matrix.

The elements of the procedure and its advantages are now apparent. Further generalizations of the procedures for developing the architectures can also account for non-minimum phase mixing environments. These steps are straightforward application of the above procedure and hence will not be elaborated upon.

An important generalization is to include nonlinearity as part of the architecture—explicitly. One model is to include nonlinearity as a static mapping of the measurement variable M(t). In this event, the adaptive network needs to include a compensating nonlinearity at its input stage. Thus, the input must include an “inverse-type” nonlinearity to counter act the measurement prior to further processing. This type of mixing environment is encountered in wireless applications that include satellite platforms.

The dynamic architecture defined in this proper way ensures that a solution to the blind signal separation does exist. We now move to the next step of defining the proper adaptive procedure/algorithm which would enable the network to converge to one of its possible solutions. Consequently, after convergence, the network will retain the variable for signal processing/recovery.

Discrete State Space Representation and Specialization to Discrete-time IIR and FIR Filters

Performance Measure/Functional

The mutual information of a random vector y is a measure of dependence among its components and is defined as follows:

In the Continuous Case: ${L(y)} = {\int_{y \in Y}{{p_{1}(y)}\ln \quad {\frac{p_{y}(y)}{\prod\limits_{j = 1}^{j = r}\quad {p_{y}\left( y_{j} \right)}}}\quad {y}}}$

In the Discrete Case: ${L(y)} = {\sum\limits_{y \in Y}{{p_{y}(y)}\ln \quad {\frac{p_{y}(y)}{\prod\limits_{j = 1}^{j = r}\quad {p_{y}\left( y_{j} \right)}}}}}$

An Approximation of the Discrete Case: ${L(y)} \cong {\sum\limits_{k = k_{0}}^{k_{1}}\quad {{p_{y}\left( {y(k)} \right)}\quad \ln \quad {\frac{p_{y}\left( {y(k)} \right)}{\prod\limits_{j = 1}^{j = r}\quad {p_{y}\left( {y_{j}(k)} \right)}}}}}$

where p_(y)(y) is the probability density function (pdf) of the random vector y, whereas p_(y) _(j) (y_(j)) is the probabilty density of the j-th component of the output vector v. The functional L(y) is always non-negative and is zero if and only if the components of the random vector y are statistically independent. This important measure defines the degree of dependence among the components of the signal vector. Therefore, it represents an appropriate functional for characterizing (the degree of) statistical independence. L(y) can be expressed in terms of the entropy ${L(y)} = {{- {H(y)}} + {\sum\limits_{i}\quad {H\left( y_{i} \right)}}}$

where H(y):=−E[ln f_(y)], is the entropy of y, and E[·] denotes the expected value.

The General Nonlinear Discrete Time Non-stationary Dynamic Case

The Environment Model

Let the environment be modeled as the following nonlinear discrete-time dynamic (forward) processing model:

 X _(p)(k+1)=f _(p) ^(k)(X _(p)(k),s(k),w ₁*)

m(k)=g _(p) ^(k)(X _(p)(k),s(k),w ₂*)

where s(k) is an n-dimensional vector of original sources, m(k) is the m-dimensional vector of measurements, X_(p)(k) is the N_(p)-dimensional state vector. The vector (or matrix) w₁* represents constant/parameter of the dynamic equation, and w₂* represents constant/parameter of the “output” equation. The functions f_(p)(·) and g_(p)(·) are differentiable. It is also assumed that existence and uniqueness of solutions of the differential equation are satisfied for each set of initial conditions X_(p)(t₀) and a given waveform vector s(k).

The Processing Networks

The (processing) network may be represented by a dynamic (forward) network or a dynamic feedback network.

The Feedforward Network is

X(k+1)=f ^(k)(X(k),m(k),w1)

y(k)=g ^(k)(X(k),m(k),w2)

where k is the index, m(k) is the m-dimensional measurement, y(k) is the r-dimensional output vector, X(k) is the N-dimensional state vector. (Note that N and N_(p) may be different.) The vector (or matrix) w₁ represents the parameter of the dynamic equation, and w₂ represents the parameter of the “output” equation. The functions f(·) and g(·) are differentiable. It is also assumed that existence and uniqueness of solutions of the differential equation are satisfied for each set of initial conditions X(t₀) and a given measurement waveform vector m(k).

Update Law for the Discrete-time Dynamic Network: General Nonlinear Case

The update law is now developed for dynamic environments to recover the original signals. The environment here is modeled as a linear dynamical system. Consequently, the network will also be modeled as a linear dynamical system.

The network is a feedforward dynamical system. In this case, one defines the performance index ${J_{0}\left( {w_{1},w_{2}} \right)} = {\sum\limits_{k = k_{0}}^{k_{1} - 1}\quad {L^{k}\left( y_{k} \right)}}$

subject to the discrete-time nonlinear dynamic network

X _(k+1) =f ^(k)(X _(k) ,m _(k) ,w ₁), X _(k) ₀

y _(k) =g ^(k)(X _(k) ,m _(k) ,w ₂)

It noted that this form of a general nonlinear time varying discrete dynamic model includes both the special architectures of multilayered recurrent and feedforward neural networks with any size and any number of layers. It is more compact, mathematically, to discuss this general case but its direct and straightforward specialization to feedforward and recurrent (feedback) models is strongly noted.

Then, the augmented cost function to be optimized becomes ${J_{0}^{\prime}\left( {w_{1},w_{2}} \right)} = {{\sum\limits_{k = k_{0}}^{k_{1} - 1}\quad {L^{k}\left( y_{k} \right)}} + {\lambda_{\lambda + 1}^{T}\left( {{f^{k}\left( {X_{k},m_{k},w_{1}} \right)} - X_{k + 1}} \right)}}$

The Hamiltonian is then defined as

H ^(k) =L ^(k)(y(k))+λ_(k+1) ^(T) f ^(k)(X,m,w ₁)

Consequently, the sufficient conditions for optimality are: $\begin{matrix} {X_{k + 1} = \quad {\frac{\partial H^{k}}{\partial\lambda_{k + 1}} = {f^{k}\left( {X_{k},m_{k},w_{1}} \right)}}} \\ {\lambda_{k} = \quad {\frac{\partial H^{k}}{\partial X_{k}} = {{\left( f_{X_{k}}^{k} \right)^{T}\lambda_{k + 1}} + \frac{\partial L^{k}}{\partial X_{k}}}}} \\ {{\Delta \quad w_{1}} = \quad {{{- \eta}\quad \frac{\partial H^{k}}{\partial w_{1}}} = {{- \eta}\quad \left( f_{w_{1}}^{k} \right)^{T}\lambda_{k + 1}}}} \\ {{\Delta \quad w_{2}} = \quad {{{- \eta}\quad \frac{\partial H^{k}}{\partial w_{2}}} = {{- \eta}\quad \frac{\partial L^{k}}{\partial w_{2}}}}} \end{matrix}$

The boundary conditions are as follows: the first equation, the state equation, uses an initial condition, while the second equation, the co-state equation, uses a final condition equal to zero. The parameter equations use initial values with small norm which may be chosen randomly or from a given set.

General Discrete Linear Dynamic Case

Environment

{overscore (X)} _(p)(k+1)={overscore (A)}{overscore (X)} _(p)(k)+{overscore (B)}s(k)

m(k)={overscore (C)}{overscore (X)} _(p)(k)+{overscore (D)}s(k)

Feedforward Network

X(k+1)=AX(k)+Bm(k)

y(k)=CX(k)+Dm(k)

The first question is the following: Does there exist parameter matrices of the processing network which would recover the original signals? The answer is yes, the explicit solutions of the parameters are given next.

Existence of Solution to the Recovery Problem

The Update Law for the Linear Dynamic Case $\begin{matrix} {X_{k + 1} = \quad {\frac{\partial H^{k}}{\partial\lambda_{k + 1}} = {{f^{k}\left( {X,{m \cdot w_{1}}} \right)} = {{AX}_{k} + {Bm}_{k}}}}} \\ {\lambda_{k} = \quad {\frac{\partial H^{k}}{\partial X_{k}} = {{{\left( f_{X_{k}}^{k} \right)^{T}\lambda_{k + 1}} + \frac{\partial L^{k}}{\partial X_{k}}} = {{A_{k}^{T}\lambda_{k}} + {C_{k}^{T}\frac{\partial L^{k}}{\partial y_{k}}}}}}} \\ {{\Delta \quad A} = \quad {{{- \eta}\quad \frac{\partial H^{k}}{\partial A}} = {{{- \eta}\quad \left( f_{A}^{k} \right)^{T}\lambda_{k + 1}} = {{- \lambda_{k + 1}}X_{k}^{T}}}}} \\ {{\Delta \quad B} = \quad {{{- \eta}\quad \frac{\partial H^{k}}{\partial B}} = {{{- \eta}\quad \left( f_{B}^{k} \right)^{T}\lambda_{k + 1}} = {{- \lambda_{k + 1}}m_{k}^{T}}}}} \\ {{\Delta \quad D} = \quad {{{- \eta}\quad \frac{\partial H^{k}}{\partial D}} = {{{- \eta}\quad \frac{\partial L^{k}}{\partial D}} = {\eta\left( {\lbrack D\rbrack^{- T} - {{f_{a}(y)}m^{T}}} \right)}}}} \\ {{\Delta \quad C} = \quad {{{- \eta}\quad \frac{\partial H^{k}}{\partial C}} = {{{- \eta}\quad \frac{\partial L^{k}}{\partial C}} = {\eta \left( {{- {f_{\alpha}(y)}}X^{T}} \right)}}}} \end{matrix}$

Specialization to IIR and FIR Filters

The general discrete-time linear dynamics of the network are given as:

X(k+1)=AX(k)+Bm(k)

y(k)=CX(k)+Dm(k)

where m(k) is the m-dimensional vector of measurements, y(k) is the n-dimensional vector of (processed) outputs, and X(k) is the (mL) dimensional states (representing filtered versions of the measurements in this case). One may view the state vector as composed of he L m-dimensional state vectors X₁, X₂, . . . , X_(L). That is, $X_{k} = {{X(k)} = \left\lbrack \quad \begin{matrix} {X_{1}(k)} \\ {X_{2}(k)} \\ \ldots \\ {X_{L}(k)} \end{matrix}\quad \right\rbrack}$

Special Case:

Consider the case where the matrices and A and B are in the “controllable canonical form.” We represent the A and B block matrices as, ${A = \left\lbrack \quad \begin{matrix} A_{11} & A_{12} & \ldots & A_{1L} \\ I & 0 & \ldots & 0 \\ \ldots & I & \ldots & 0 \\ 0 & 0 & I & 0 \end{matrix}\quad \right\rbrack},\quad {{{and}\quad B} = \left\lbrack \quad \begin{matrix} I \\ 0 \\ \ldots \\ 0 \end{matrix}\quad \right\rbrack}$

where each block sub-matrix A_(tj) may be simplified to a diagonal matrix, and each I is a block identity matrix with appropriate dimensions.

Then, $\begin{matrix} {{X_{1}\left( {k + 1} \right)} = \quad {{\sum\limits_{j = 1}^{L}\quad {A_{1j}{X_{j}(k)}}} + {m(k)}}} \\ {{X_{2}\left( {k + 1} \right)} = \quad {X_{1}(k)}} \\ \ldots \\ {{X_{L}\left( {k + 1} \right)} = \quad {X_{L - 1}(k)}} \\ {{y(k)} = \quad {{\sum\limits_{j = 1}^{L}\quad {C_{j}{X_{j}(k)}}} + {{Dm}(k)}}} \end{matrix}$

This model represents an IIR filtering structure of the measurement vector m(k). In the event that the block matrices A_(ti) are zero, then the model is reduced to the special case of an FIR filter.

 X ₁(k+1)=m(k)

X ₂(k+1)=X ₁(k)

. . .

X _(L)(k+1)=X _(L−1)(k) ${y(k)} = {{\sum\limits_{j = 1}^{L}\quad {C_{j}{X_{i}(k)}}} + {{Dm}(k)}}$

The equations may be re-written in the well-known FIR form

X ₁(k)=m(k−1)

X ₂(k)=X ₁(k−1)=m(k−2)

. . .

X _(L)(k)=X _(L−1)(k−1)=m(k−L) ${y(k)} = {{\sum\limits_{j = 1}^{L}\quad {C_{i}{X_{j}(k)}}} + {{Dm}(k)}}$

This last equation relates the measured signal m(k) and its delayed versions represented by X_(j)(k), to the output y(k).

Special Canonical Representation Cases:

The matrices A and B are best represented in the “controllable canonical forms” or the form I format. That B is constant and A has only the first block rows as parameters in the IIR network case. In that event, No update equation for the matrix B are used. While for the matrix A only the first block rows are updated. Thus the update law for the matrix A is limited to ${\Delta \quad A_{1i}} = {{{- \eta}\quad \frac{\partial H^{k}}{\partial A_{1i}}} = {{{- \left( {\eta \left( f_{A_{1i}}^{k} \right)} \right)^{T}}\lambda_{k + 1}} = {{- \eta}\quad {\lambda_{1}\left( {k + 1} \right)}{X_{i}^{T}(k)}}}}$

Noting the form of the matrix A, the co-state equations can be expanded as $\begin{matrix} {{\lambda_{1}(k)} = \quad {{\lambda_{2}\left( {k + 1} \right)} + {C_{1}^{T}\frac{\partial L^{k}}{\partial y_{k}}(k)}}} \\ {{\lambda_{2}(k)} = \quad {{\lambda_{3}\left( {k + 1} \right)} + {C_{2}^{T}\frac{\partial L^{k}}{\partial y_{k}}(k)}}} \\ \vdots \\ {{\lambda_{L}(k)} = \quad {C_{L}^{T}\frac{\partial L^{k}}{\partial y_{k}}(k)}} \\ {{\lambda_{1}\left( {k + 1} \right)} = \quad {\sum\limits_{l = 1}^{L}\quad {C_{l}^{T}\frac{\partial L^{k}}{\partial y_{k}}\left( {k + l} \right)}}} \end{matrix}$

Therefore, the update law for the block sub-matrices in A are: ${\Delta \quad A_{1j}} = {{{- \eta}\frac{\partial H^{k}}{\partial A_{1j}}} = {{{- \eta}\quad {\lambda_{1}\left( {k + 1} \right)}{X_{j}^{T}(k)}} = {{- \eta}{\sum\limits_{l = 1}^{L}\quad {C_{l}^{T}\frac{\partial L^{k}}{\partial y_{k}}\left( {k + l} \right)\quad X_{j}^{T}}}}}}$

The [D]^(−T) represents the transpose of the pseudo-inverse of the D matrix. The update laws for the matrices D and C can be elaborated upon as follows:

ΔD=η([D] ^(−T) −f _(α)(y)m ^(T))=η(I−f _(α)(y)(Dm)^(T))[D] ^(−T)

where I is a matrix composed of the r×r identity matrix augmented by additional zero row (if n>r) or additional zero columns (if n<r). In light of considering the “natural gradient,” an alternate update law in this case is

ΔD=η([D] ^(−T) −f _(α)(y)m ^(T))D ^(T) D=η(I−f _(α)(y)(Dm)^(T))D

For the C matrix, the update equations can be written for each block matrix as follows: ${\Delta \quad C_{j}} = {{{- \eta}\frac{\partial H^{k}}{\partial C_{j}}} = {{{- \eta}\frac{\partial L^{k}}{\partial C_{i}}} = {\eta \left( {{- {f_{\alpha}(y)}}X_{i}^{T}} \right)}}}$

If one reduces the state space by eliminating the internal state, one reduces the system to a static environment where

m(t)={overscore (D)}S(t)

In discrete notation it is defined by

m(k)={overscore (D)}S(k)

Two types of (discrete) networks have been described for separation of statically mixed signals. These are the feedforward network where the separated signals y(k) are

y(k)=WM(k)

and feedback network where y(k) is defined as

y(k)=m(k)−Dy(k)

y(k)=(I+D)⁻¹ m(k)

Discrete update laws suggested for these are as follows

In case of the feedforward network,

W ^(t+1) =W ^(t) +μ{−f(y(k))g ^(T)(y(k))+∝I}

and in case of the feedback network,

D ^(t+1) =D ^(t) +μ{f(y(k))g ^(T)(y(k))−∝I}

where (∝I) may be replaced by time windowed averages of the diagonals of the f(y(k))g^(T)(y(k)) matrix.

Note: One may also use multiplicative weights in the update. The following “dynamic” FIR models can demonstrate analogous update law modifications.

Environment Model:

In an FIR, single delay case, the mixed samples m(k) are defined by the equation ${m(k)} = {{{{\overset{\_}{D}}_{0}{S(k)}} + {D_{1}{S\left( {k - 1} \right)}}} = {\sum\limits_{i = 0}^{1}\quad {{\overset{\_}{D}}_{i}{S\left( {k - i} \right)}}}}$

Separating Feedforward Network Model

This network produces approximated source signals y(k) defined by ${y(k)} = {\sum\limits_{j = 1}^{L}\quad {W_{j}{M\left( {k - j} \right)}}}$

Using the update laws for matrices W₀ to W_(L) as follows:

ΔW ₀=μ₀ {∝I−f(y(k))g(y(k))^(T)}

ΔW ₁=−μ₁ {f(y(k))g(y(k−1)}^(T)

or

ΔW ₁=−μ_(t2) {f(y(k))g(y(k−1))^(T) +γf(y(k−1))g(y(k)^(T) ${{\Delta \quad W_{L}} = {{- \mu_{L}}\left\{ {{f\left( {y(k)} \right)}\left\lbrack {\sum\limits_{l = 1}^{L}\quad {g\left( {y\left( {k - l} \right)}^{T} \right)}} \right\rbrack} \right\} \quad {or}}}\quad$ ${\Delta \quad W_{L}} = {{- \mu_{L}}\left\{ {{{f\left( {y(k)} \right)}\left\lbrack {\sum\limits_{l = 1}^{L}\quad {g\left( {y\left( {k - l} \right)} \right)}^{T}} \right\rbrack} + {{\gamma \left\lbrack {\sum\limits_{l = 1}^{L}\quad {f\left( {y\left( {k - l} \right)} \right)}} \right\rbrack}{g\left( {y(k)}^{T} \right\}}}} \right.}$

A specific update can be performed simply by means of adding the rate of change ΔW to W as

W ^(t+1) =W ^(t) +ΔW

or by another known integration method for computing values of variables from their derivatives.

Continuous Time Models

This invention introduces a set of update laws and links minimization of mutual information and the information maximization of the output entropy function of a nonlinear neural network, specifically in relation to techniques for blind separation, discrimination and recovery of mixed signals. The system of the invention enables the adaptive blind separation and recovery of several unknown signals mixed together in changing interference environments with very minimal assumption on the original signals.

In the previous section, discrete time models were developed. This section deals primarily with continuous time derivations. These continuous system derivations parallel those in the discrete case and described here to complement the continuous time models. It is noted that continuous time and discrete time derivations in the content of this invention for the large part are analogous of each other. Updates laws of one domain can also be converted to update laws of the other domain by those skilled in the art.

Performance Measure/Functional

The mutual information of a random vector y is a measure of dependence among its components and is defined as follows:

In the continuous case: ${L(y)} = {\int_{y \in Y}{{p_{y}(y)}\ln {\frac{p_{y}(y)}{\prod\limits_{j = 1}^{j = r}\quad {p_{y_{j}}\left( y_{j} \right)}}}\quad {y}}}$

In the discrete case: ${L(y)} = {\sum\limits_{y \in Y}^{k}\quad {p_{y}(y)\quad \ln \quad {\frac{p_{y}(y)}{\prod\limits_{j = 1}^{j = r}\quad {p_{y_{j}}\left( y_{j} \right)}}}}}$

An Approximation of the Discrete Case: ${L(y)} \cong {\sum\limits_{k = k_{0}}^{k}\quad {{p_{y}\left( {y(k)} \right)}\ln {\frac{p_{y}\left( {y(k)} \right)}{\prod\limits_{j = 1}^{j = r}\quad {p_{y_{j}}\left( {y_{j}(k)} \right)}}}}}$

where p_(y)(y) is the probability density function (pdf) of the random vector y, whereas p_(y)(y_(j)) is the probabilty density of the j-th component of the output vector y. The functional L(y) is always non-negative and is zero if and only if the components of the random vector y are statistically independent. This important measure defines the degree of dependence among the components of the signal vector. Therefore, it represents an appropriate functional for characterizing (the degree of) statistical independence. L(y) can be expressed in terms of the entropy ${L(y)} = {{- {H(y)}} + {\sum\limits_{i}\quad {H\left( y_{i} \right)}}}$

where H(y):=−E[ln f_(y)], is the entropy of y, and E[·] denotes the expected value.

Derivation of the Update Law

Assume a linear feedforward structure of the neural network as shown below.

Then the probability density functions fo the (random vector) output and the mixed input variables are related as The mutual information of a random vector y is a measure of independence among its components and can be defined as: ${f_{y}(u)} = {\frac{f_{m}(u)}{W}.}$

Thus, ${L(y)} = {{- {H(y)}} + {\sum\limits_{i}\quad {H\left( y_{i} \right)}}}$

can be written as ${L(y)} = {{- {H(M)}} - {\ln {W}} + {\sum\limits_{i}\quad {H\left( y_{i} \right)}}}$

To optimize (actually, minimize) L(y) as a function of W, knowledge (or approximation) of only the marginal entropies is required. Such information is not available, by hypothesis, and thus one needs to approximate these quantities in order to minimize L(y). Comon and Amari et, al. used respectively an Edgeworth and a Charlier-Gram expansion of the pdf's to approximate the marginal entropies. The approximation produces:

 L(y):=Ø(M,y,W)

the derivations lead to the following gradient update rule

{dot over (W)}=η[W ^(−T) −f _(a)(y)M ^(T)]

where functional approximation leads to a different function f_(a)(y). Our work assumed a Charlier-Gram expansion and includes higher approximations than used previously. In our case, the function f_(a)(y) is given by ${f_{a}(y)} = {{\frac{71}{12}y^{15}} - {\frac{355}{12}y^{13}} + {\frac{190}{3}y^{11}} - {\frac{4033}{24}y^{9}} + {\frac{941}{3}y^{7}} + {\frac{47}{8}y^{5}} + y^{3} + y}$

As an example, the algorithm defined by the previous two equations converges when a uniform random noise and sine function are applied as unknown sources. One can use the natural gradient to express the update law defined previously as {dot over (W)}=η[W^(−T)−f_(a)(y)M^(T)] as

{dot over (W)}=η[L−f _(a)(y)y ^(T) ]W

In this case, simulations show that such an algorithm converges for a variety of signals. However, it fails if a random and a sine waveforms were used. These results will also apply if some nonlinear functions are used. Hence, in this case, both functions have similar effects.

Parameter Update Techniques for Continuous Dynamic Environments

We consider more realistic environments, define their models and apply the update law to recover the original signals. In our formulation, the environment is modeled as linear dynamic system. Consequently, the network will also be modeled as a linear dynamic system.

The update law is now developed for dynamic environments to recover the original signals. The environment here is modeled as a linear dynamical system. Consequently, the network will also be modeled as a linear dynamical system.

The Feedforward Case

The network is a feedforward dynamical system as in FIG. 7. In this case, one defines the performance index ${J\left( {x,w} \right)} = {\int_{0}^{T}{{\mathcal{L}\left( {t,x,\overset{.}{x},\lambda,w} \right)}\quad {t}}}$

where is the Lagrangian and is defined as ${\mathcal{L}\left( {t,x,\overset{.}{x},\lambda,w} \right)} = {{\varphi \left( {t,x,w} \right)} + {\lambda^{T}\left( {\overset{.}{x} - {Ax} - {Be}} \right)}}$

where λ(t) is the adjoint state equation defined by $\overset{.}{\lambda} = {{{- A^{T}}\lambda} + \frac{\partial\varphi}{\partial x}}$

The functional φ may represent a scaled version of our measure of dependence I(y), w is a vector constructed of the rows of the parameter matrices C and D. Note that a canonical realization may be used so that B is constant. The matrix A, in the canonical representation, may have only N-parameters, where N is the dimension of the state vector X. The parameters, A, C, and D, represented generically by wp, will be updated using the general gradient descent form: ${\overset{.}{w}p} = {{- \eta}\frac{\partial\mathcal{L}}{\partial{wp}}}$

Therefore, using the performance index defined as ${{I(y)} = {{- {H(y)}} + {\sum\limits_{i}\quad {H\left( y_{i} \right)}}}},$

the matrices C and D are updated according to

{dot over (D)}=η(I−f _(a)(y)y ^(T))D

{dot over (C)}=γ(I−f _(a)(y)x ^(T))C

where f_(a)(·) is given by a variety of nonlinear expansive odd-functions which include hyperbolic sine, and the inverse of a sigmiodal function.

In one specific computation/approximation, the function is given as ${f_{a}(y)} = {{\frac{71}{12}y^{15}} - {\frac{355}{12}y^{13}} + {\frac{190}{3}y^{11}} - {\frac{4033}{24}y^{9}} + {\frac{941}{3}y^{7}} + {\frac{47}{8}y^{5}} + y^{3} + y}$

The essential features in using the above equation for f_(a)(y) are summarized as follows:

1. it is analytically derived and justified.

2. it includes a linear term in y and thus enables the performance of second order statistics necessary for signal whitening,

3. it contains higher order terms which emanate from the 4th order cumulant statistics in the output signal y, and

4. it does not make the assumption that the output signal has unity covariance.

The function for f_(a)(y) represents the only function used in the literature to date with the above characteristics. This function, therefore, exceeds the limitations of the other analytically derived functions.

Computer simulations confirm that the algorithm converges if the function for f_(a)(y) defined above is used.

The Feeback Architecture

The (output) feedback architecture of FIG. 8 may be simplified in realization with the following (canonical) state-space representation:

The Environment: $\begin{matrix} {{{\overset{.}{\overset{\_}{X}}}_{i} = \quad {{{\overset{\_}{A}}_{i}{\overset{\_}{X}}_{i}} + {{\overset{\_}{B}}_{i}\overset{\_}{S}}}},\quad {1 \leq i \leq L}} \\ {M = \quad {{\sum\limits_{i = 1}^{L}\quad {{\overset{\_}{C}}_{i}{\overset{\_}{X}}_{i}}} + {\overset{\_}{D}\quad \overset{\_}{S}}}} \end{matrix}$

The network: $\begin{matrix} {{{\overset{.}{X}}_{i} = \quad {{A_{i}X_{i}} + {B_{i}y}}},{1 \leq i \leq L}} \\ {Z = \quad {{\sum\limits_{i = 1}^{L}\quad {C_{i}X_{i}}} + {Dy}}} \\ {y = \quad {M - Z}} \end{matrix}$

where each X_(i) represents a state vector of the environment of the same dimension as the source signals, and each X_(i) represents a state of the network of the same dimension as the output signal. For simplicity, we assumed the same number, L, of the state vectors in both environment and network.

Now, using the performance index ${{I(y)} = {{- {H(y)}} + {\sum\limits_{i}\quad {H\left( y_{i} \right)}}}},$

the matrices C_(i) and D are updated according to

{dot over (D)}=ηD(−I+f _(a)(y)y ^(T))

{dot over (C)} _(i) =γC _(i)(−I+f _(a)(y)x ^(T))

A simpler update law which was verified to work in certain cases may be satisfactory in special applications:

{dot over (D)}=ηf _(a)(y)y ^(T)

{dot over (C)} _(i) =γf _(a)(y)x _(i) ^(T)

Computer simulations performed demonstrated the performance of the two equations above.

It should be clear that the states may, in the simple FIR filtering, represent simple delays of the sources, while the states in the network represent delays in the fed back output signals. However, this view is a simple consideration of the delays of the signal that occur in real physical applications. The framework, therefore, is more general since it may consider arbitrary delays including those of IIR filtering and continuous-time physical effects.

Observations

Connection to Information Maximization

One can rewrite the averaged mutual information in terms of the entropy of the output vector of a nonlinear network with a weight matrix followed by an activation function nonlinear. This view would link the about analytical approach with the information-maximization approach. To see the connection, we now proceed as follows. Using $\left( {{f_{y}(u)} = {\frac{f_{m}(u)}{W}.}} \right),$

one can re-express the mutual information criterion as ${I(y)} = {E\left\lbrack {\ln \quad \frac{f_{M}(u)}{{W}{\prod_{i}{f_{yi}\left( u_{i} \right)}}}} \right\rbrack}$ ${\int{{f_{y}(u)}\ln \quad \frac{f_{M}(u)}{{W}{\prod_{i}{f_{yi}\left( u_{i} \right)}}}\quad {u}}}\quad$

One can now view the expression WΠ  f_(yi)(u_(i))

as the Jacobian of a nonlinear (activation) function applied to the output vector components. Thus if we were to insert an activation function nonlinearity, following the linear mapping of the weight matrix, we would render the expression for ${I(y)} = {\int{{f_{y}(u)}\ln \quad \frac{f_{y}(u)}{\prod_{i}{f_{yi}\left( u_{i} \right)}}\quad {u}}}$

equals to

I(y)=E[ln f _(y)(u)]

Note that, in this last step, we took the liberty in using the same symbol f to stand for the unknown joint probability function of the vector output of the non linear activation function.

Thus now one can state that the minimization of ${I(y)} = {\int{{f_{y}(u)}\ln \quad \frac{f_{y}(u)}{\prod_{i}{f_{yi}\left( u_{i} \right)}}\quad {u}}}$

is equivalent to the minimization of I(y)=E[ln f_(y)(u)]. One observes that minimizing the quantity I(y)=E[ln f_(y)(u)] is, by definition, equal to the maximization of the entropy function of the output of the nonlinear activation function. Note that the nonlinear activation function used is constructed so that its derivative is necessarily equal to the marginal probability distributions. Hence this establishes the exact link between the analytical approach pursued herein with other discussions. This bypasses the generally invalid assumptions made previously which assume that

H(y|e)

does not depend on the weight matrix.

We note that the crux of the matter in the formulation is to determine an approximation to the marginal probability density functions. Such an approximation needs to rely on the statistical properties of the processed signals and justified by analytical means.

Stochastic Versus Deterministic Update

Two key points should be noted, One is that while the formulation adopts a stochastic functional, in the eventual implementation of the update laws, only deterministic functions of the output variable y are used. The second point is that the update laws of {dot over (W)}=η[W^(−T)−f_(a)(y)M^(T)] or {dot over (W)}=η[L−f_(a)(y)y^(T)]W are applied on line. In contrast, the application of the update laws described before are applied using a window and selecting random output samples to emulate the stochastic process in the update law.

Implementation of the Architectures and Update Laws

A direct hardware implementation of a practical extension of the HJ network to a first-order dynamic network has been reported previously with experimental results. Direct implementations represent an avenue of effective implementation of the architectures and algorithms for the fastest execution of the recovery network.

Another paradigm includes DSP architectures. For a DSP based emulation of the signal separation algorithm families discussed here, it will be up to the tradeoffs in a particular application to identify the best processor architecture and numerical representations, e.g., floating or fixed point. To achieve a highly integrated solution (e.g., one chip) will require embedding a DSP core either from a pre-designed device or designed from standard silicon cell libraries.

The compiler front-end to the DSP assembler and linker forms a direct bridge from a high level language coded algorithm simulation environment to DSP emulation. In addition, a similar direct link exists between many computing environments and the DSP emulation environments, for example, C/C++ library and compilers for various processors.

Programmable logic can be an integral part of the related development process. A programmable DSP core (a DSP processor that is designed for integration into a custom chip) can be integrated with custom logic to differentiate a system and reduce system cost, space, and power consumption. 

What is claimed is:
 1. An acoustic signal discrimination system for discriminating at least one input signal M into at least one output signal Y, the at least one input signal comprising at least one function of at least one source signal affected by a medium, the at least one source signal associated with at least one source, the at least one output signal estimating the at least one source signal, the system comprising: a processor for defining and computing a plurality of parameters of a signal separation architecture, the architecture comprising a feedback state space representation establishing a relationship between the input signals and the output signals as {dot over (X)} _(i) =A _(i) X _(i) +B _(i) Y for 1≦i<L $Z = {{\sum\limits_{i = 1}^{L}\quad {C_{i}X_{i}}} + {DY}}$

 U=M−Z where X_(i) represents a state vector of the medium, L is a number of state vectors, A_(i) and B_(i) are state update matrices, Y is a function of U, and C_(i) and D are matrices updated according to {dot over (C)} _(i) =γC _(i)(−I+f _(a)(Y)X ^(T)) {dot over (D)}=ηD(−I+f _(a)(Y)Y ^(T)) where I is an identity matrix, γ and η are constants, and f_(a)(·) is a non-linear odd function.
 2. The acoustic signal discrimination system as in claim 1 further comprising at least one sensor for detecting the at least one input signal and an output processor for computing the at least one output signal.
 3. The acoustic signal discrimination system as in claim 1 wherein ${f_{a}(y)} = {{\frac{71}{12}y^{15}} - {\frac{355}{12}y^{13}} + {\frac{190}{3}\quad y^{11}} - {\frac{4033}{24}y^{9}} + {\frac{941}{3}\quad y^{7}} - {\frac{47}{8}\quad y^{5}} + y^{3} + {y.}}$


4. The acoustic signal discrimination system as in claim 1 wherein f_(a) comprises a hyperbolic function.
 5. The acoustic signal discrimination system as in claim 1 wherein f_(a) comprises an inverse of a sigmoidal function.
 6. The acoustic signal discrimination system as in claim 1 wherein the at least one input signal is received and stored.
 7. The acoustic signal discrimination system as in claim 1 further comprising an update processor computing variable parameters of the signal separation architecture.
 8. The acoustic signal discrimination system as in claim 1 further comprising an input signal processor for computing functions of the at least one input signal.
 9. The acoustic signal discrimination system as in claim 1 further comprising an output signal processor for computing at least one function of the at least one output signal.
 10. The acoustic signal discrimination system as in claim 1 wherein variable parameters of the signal separation architecture are computed based on the data from at least one of an input signal processor and an output signal processor.
 11. The acoustic signal discrimination system as in claim 1 wherein the at least one sensor is a plurality of sensors generating a plurality of input signals, the plurality of sensors arranged in a sensor array having a directional response pattern.
 12. The acoustic signal discrimination system as in claim 11 wherein the directional response pattern of the sensor array is based on signal processing of the input signals.
 13. The acoustic signal discrimination system as in claim 1 wherein a quantity of the input signals and a quantity of the output signals are not equal.
 14. The acoustic signal discrimination system as in claim 1 wherein at least one of the at least one output signal is a function of at least two source signals.
 15. The acoustic signal discrimination system as in claim 1 wherein the at least one output signal comprises at least two output signals based on a function of a same source signal.
 16. The acoustic signal discrimination system as in claim 1 wherein the feedback state space representation is mapped at least in part onto a finite impulse response (FIR) filter.
 17. The acoustic signal discrimination system as in claim 1 wherein the state space representation is mapped at least in part onto an infinite impulse response (IIR) filter.
 18. The acoustic signal discrimination system as in claim 1 wherein the state space representation is generalized to a nonlinear time variant function.
 19. A method for separating a plurality of source signals comprising: receiving a plurality of input signals M; and computing a plurality of output signals, Y, the output signals estimating the source signals, the output signals based on parameters of a signal separation architecture; wherein the signal separation architecture comprises {dot over (X)} _(i) =A _(i) X _(i) +B _(i) Y for 1≦i<L $Z = {{\sum\limits_{i = 1}^{L}\quad {C_{i}X_{i}}} + {DY}}$

 U=M−Z  where X_(i) represents a state vector of the environment, L is a number of state vectors, A_(i) and B_(i) are state update matrices, Y is a function of U, and C_(i) and D are matrices updated according to {dot over (C)} _(i) =γC _(i)(−I+f _(a)(Y)X ^(T)) {dot over (D)}=ηD(−I+f _(a)(Y)Y ^(T)) where I is an identity matrix, γ and η are constants, and f_(a)(·) is a non-linear odd function.
 20. The method for separating a plurality of source signals as in claim 19 wherein ${f_{a}(y)} = {{\frac{71}{12}y^{15}} - {\frac{355}{12}y^{13}} + {\frac{190}{3}\quad y^{11}} - {\frac{4033}{24}y^{9}} + {\frac{941}{3}\quad y^{7}} - {\frac{47}{8}\quad y^{5}} + y^{3} + {y.}}$


21. The method for separating a plurality of source signals as in claim 19 wherein f_(a) comprises a hyperbolic function.
 22. The method for separating a plurality of source signals as in claim 19 wherein f_(a) comprises an inverse of a sigmoidal function.
 23. The method for separating a plurality of source signals as in claim 19 further comprising storing the input signals.
 24. The method for separating a plurality of source signals as in claim 19 further comprising storing the output signals.
 25. The method for separating a plurality of source signals as in claim 19 further comprising computing at least one from a set consisting of transforms of the input signals and analysis of the input signals.
 26. The method for separating a plurality of source signals as in claim 19 further comprising computing at least one from a set consisting of transforms of the output signals and analysis of the output signals.
 27. The method for separating a plurality of source signals as in claim 19 wherein the architecture is altered during execution of the method.
 28. The method for separating a plurality of source signals as in claim 19 wherein zeros or a random set of numbers is used to initialize parameters.
 29. The method for separating a plurality of source signals as in claim 19 further comprising using parameters previously computed by another method instance overlapped in time.
 30. The method for separating a plurality of source signals as in claim 19 further comprising using parameters computed by a previously terminated method instance.
 31. A method for discriminating at least one input signal M comprising: forming a signal separation architecture for determining at least one output signal, Y, the signal separation architecture comprising {dot over (X)} _(i) =A _(i) X _(i) +B _(i) Y for 1≦i<L $Z = {{\sum\limits_{i = 1}^{L}\quad {C_{i}X_{i}}} + {DY}}$

 U=M−Z where X_(i) represents a state vector of the medium, L is a number of state vectors, A_(i) and B_(i) are state update matrices, Y is a function of U, and C_(i) and D are matrices updated according to {dot over (C)} _(i) =γC _(i)(−I+f _(a)(Y)X ^(T)) {dot over (D)}=ηD(−I+f _(a)(Y)Y ^(T))  where I is an identity matrix, γ and η are constants, and f_(a)(·) is a non-linear odd function; and determining the at least one output signal based on the signal separation architecture. 